home *** CD-ROM | disk | FTP | other *** search
/ The Original Shareware 1.1 / The Original Shareware (WeMake CDs)(Volume 1.1)(CDs, Inc)(1993).iso / 16 / wptools3.zip / WPTOOLS3.DOC < prev   
Text File  |  1989-03-05  |  51KB  |  1,273 lines

  1. Copyright (c) 1988, 1989 by David Seidman
  2. March 5, 1989
  3.  
  4.  
  5.  
  6.                        WPTOOLS VERSION 3.0
  7.  
  8.  
  9.  
  10. INTRODUCTION
  11.  
  12.  
  13. WPTOOLS Version 3, a shareware product, consists of a what's new 
  14. file, this documentation, and thirteen programs:  DISKFONT, 
  15. FIXPRE, FONTFILE, FONTLIST, LISTMACS, MAKETABS, MERGESUM, 
  16. PRINTIT, PRSFONTS, STYLIST, WHATPTRS, WP5LOOK, and WPSNOOP.  All 
  17. but PRINTIT are utilities for use with WordPerfect Version 5.0 
  18. (WP5) files only.  
  19.  
  20.  
  21. Briefly, this is what the programs do:
  22.  
  23.  
  24. DISKFONT Searches a directory for specified soft font files and, 
  25.          optionally, lists descriptive information about the 
  26.          fonts it finds.  
  27.  
  28. FIXPRE   Removes deleted (and optionally other) data packets from 
  29.          the prefix of WP5 document files and removes deleted 
  30.          data packets from WP5 setup files (WP{WP}.SET, or any 
  31.          other name you have used to store a setup file).  For 
  32.          document files, this will often facilitate changing the 
  33.          printer driver used with the file and shrink the file.  
  34.          Setup files grow in size as you modify your setup; 
  35.          FIXPRE shrinks them again.  And FIXPRE sometimes helps 
  36.          when WP5 just seems to be acting strangely.  
  37.  
  38. FONTFILE Lists the file names of the soft font files specified in 
  39.          a PRS file.  
  40.  
  41. FONTLIST List the names of the fonts used in a WP5 document.  
  42.  
  43. LISTMACS Lists the names and descriptions of macros in WPM and 
  44.          WPK files (and the keys for WPK macros), optionally 
  45.          sorted.  
  46.  
  47. MAKETABS Converts an ASCII text file to a WP5 document, replacing 
  48.          spaces by tabs.  
  49.  
  50. MERGESUM Creates a WP5 secondary merge file, each record 
  51.          containing the information from a WP5 document summary 
  52.          (or, optionally, the first 400 or so characters of a 
  53.          document if no summary was created), along with 
  54.          information from the DOS file directory.  In effect, 
  55.          creates a database of document summaries that can be 
  56.          processed using the WP5 Merge and Sort functions.  
  57.  
  58. PRINTIT  Paginates and formats an ASCII text file for printing.  
  59.  
  60. PRSFONTS Lists and optionally numbers the names of the fonts 
  61.          available in a WP5 PRS file.  
  62.  
  63. STYLIST  Lists names and descriptions of styles, optionally sorted.
  64.  
  65. WHATPTRS Lists the printers described in ALL files, optionally 
  66.          sorted by printer name.  
  67.  
  68. WP5LOOK  Displays one or more WP5 document files specified on the 
  69.          command line.  Particularly because files can be 
  70.          specified with wildcards, WP5LOOK may be more convenient 
  71.          than WP5 itself for browsing through WP5 documents.  
  72.  
  73. WPSNOOP  Determines, in greater or lesser detail, the file type 
  74.          of many, but not all, files associated with recent 
  75.          WordPerfect Corporation products.  For document files, 
  76.          lists the document summary.  For macro files, lists the 
  77.          description.  Optionally reveals the structure of WP5 
  78.          document file prefixes and of WP5 setup file prefixes.  
  79.  
  80.  
  81. More detail on each program is given below, along with a 
  82. description of WP5 document file prefixes.  
  83.  
  84. WPCorp has no connection with these programs, except that it 
  85. provided the technical information necessary to write some of 
  86. them.  
  87.  
  88.  
  89.           ..............................................
  90.  
  91.  
  92.  
  93.                     Notes on Input and Output
  94.  
  95. You normally supply these programs with one or more input file 
  96. names ("Infile") and sometimes an output file name ("Ofile") on 
  97. the DOS command line.  The file name may always include drive and 
  98. path specifications.  The individual program descriptions mention 
  99. where wildcards (* and ?) can be used.  
  100.  
  101. Many of these programs are intended to read WP5 files.  Wildcards 
  102. may cause the program to try to read incorrect file types.  
  103. Generally, these programs ignore input files of the wrong kind.  
  104.  
  105. Many of these programs by default write their output to "standard 
  106. output," but output will go to a WP5 file instead if you specify 
  107. an output file (usually with a -o switch).  Sending the output to 
  108. standard output can be useful.  By default, standard output means 
  109. the screen --the output goes to the screen in a continuous flow.  
  110. This may not be what you want, either because more than one 
  111. screen's worth of output will be generated or because you want to 
  112. keep or otherwise use the output.  Instead of letting standard 
  113. output go directly to the screen, you can pipe it to another 
  114. program, or redirect it to either the printer or a file.  For 
  115. example, screen display is more useful if you pipe output to the 
  116. DOS filter MORE: 
  117.  
  118.  
  119.               WPSNOOP *.* |MORE
  120.  
  121.  
  122. or, better, to Vernon Buerg's LIST:
  123.  
  124.  
  125.               WPSNOOP *.* |LIST /s
  126.  
  127.  
  128. You might also pipe to PRINTIT and redirect the output from 
  129. PRINTIT to the printer directly or to a file for later printing: 
  130.  
  131.  
  132.               WPSNOOP *.* |PRINTIT >prn
  133.  
  134. or
  135.  
  136.               WPSNOOP *.*|PRINTIT >outfile
  137.  
  138.  
  139. Or you can have the program output go directly to an ASCII text 
  140. file: 
  141.  
  142.               WPSNOOP *.*>outfile
  143.  
  144.           ..............................................
  145.  
  146.  
  147.  
  148. I.  DISKFONT
  149.  
  150. DISKFONT has two uses:
  151.  
  152.     1.   To provide information about a soft fonts by reading the 
  153.          soft font disk file.  
  154.  
  155.     2.   To examine a list of fonts to determine whether their 
  156.          files are on the disk.  
  157.  
  158. DISKFONT reads a list of soft font file names and searches for 
  159. the files in a specified disk directory.  By default, it lists 
  160. information about the fonts in the soft font files it finds.  
  161. Optionally, it merely reports the names of the font files it 
  162. fails to find.  
  163.  
  164. FONTFILE (another WPTOOLS program) creates a list of soft font 
  165. file names referenced in a PRS file.  This list may be used as 
  166. input to DISKFONT, which can process the list to find whether the 
  167. files are available or to provide more information about them.  
  168.  
  169. Note that the ALL file from which a PRS file was made may 
  170. reference more soft fonts than the PRS file references.  Soft 
  171. fonts are referenced in a PRS file only if you chose to include 
  172. them in the PRS file, using * or + (or both).  Therefore, the 
  173. list generated by FONTFILE may be smaller than the list WPerf is 
  174. capable of displaying.  
  175.  
  176. Usage:   DISKFONT [-Option] [-Option]
  177.  
  178.          Input is a list of filenames from standard input.  The 
  179.          filenames may include standard DOS wildcards.  FONTFILE 
  180.          output is acceptable input to DISKFONT, and may be piped 
  181.          to it.  If the input is a file containing a list of soft 
  182.          font file names, use input redirection (<infile).  Input 
  183.          may also come from the keyboard; in that case, use ^Z 
  184.          followed by Enter to terminate keyboard input.  
  185.  
  186.          Output goes to standard output by default and may be 
  187.          piped or redirected.  
  188.  
  189.  
  190.          Options:
  191.  
  192.          -Ddirectory (Directory where fonts are)
  193.               If no directory is supplied, default directory is
  194.               assumed.  If the input filenames include directory
  195.               information, that overrides the command line.
  196.  
  197.          -OOFile   For WP5 output.
  198.               Formatting of the WP5 file assumes, but does not
  199.               set, left and right margins of 1" and a 10-pitch
  200.               monospaced font; the tabs set by DISKFONT may
  201.               seem strange if those are not your defaults.
  202.  
  203.          -F   Only find fonts--no info given
  204.  
  205.          -?   Help message
  206.  
  207.  
  208.          Limitation: DISKFONT has been tested only with font 
  209.                    files compatible with an HP LaserJet Series 
  210.                    II.  
  211.  
  212.  
  213.  
  214.          Examples:
  215.  
  216.          DISKFONT
  217.  
  218.          Keyboard input, output to standard output (screen).
  219.  
  220.  
  221.          DISKFONT <myfonts.txt
  222.  
  223.  
  224.          Input, myfonts.txt, is an ASCII text file containing a 
  225.          list of font file names.  Output to screen.  
  226.  
  227.     
  228.          FONTFILE My.PRS|DISKFONT -Dc:\wp\fonts|PRINTIT>prn
  229.  
  230.  
  231.          Input is list of font files referenced by My.PRS.  The 
  232.          list is created by FONTFILE and piped to DISKFONT.  The 
  233.          font files are in subdirectory \wp\fonts on drive C:.  
  234.          DISKFONT output is piped to PRINTIT.  PRINTIT output is 
  235.          redirected to the printer.  
  236.  
  237.  
  238.  
  239. Here is an example of the output from DISKFONT:
  240.  
  241.  
  242.  
  243.                             *  *  *  *
  244.  
  245.  
  246. Report for font file AC0060RH.HPF:
  247. FontName           Swiss
  248. Typeface           4 (Helvetica) 
  249. Orientation        Portrait
  250. Height             6.0 points
  251. Style              Upright 
  252. Font Weight        2 
  253. Font type          8-bit
  254. Symbol Set         HP Roman-8
  255. Spacing            Proportional.  Space width is 1.68 points
  256.  
  257.  
  258.                             *  *  *  *
  259.  
  260. FontName is the name stored in the font file as the name of the 
  261. font, although some fonts are usually referred to by a different 
  262. name.  
  263.  
  264. Typeface is a number (0-255).  For some typefaces, DISKFONT can 
  265. supply the typeface name.  
  266.  
  267. Orientation is Portrait or Landscape.
  268.  
  269. Height is a standard measure of the height of the font.  It is 
  270. not necessarily the height of any character in the font.  
  271.  
  272. Style is either Upright or what HP calls "italic."  HP notes that 
  273. other values may be assigned -- DISKFONT will not recognize them.  
  274.  
  275. Weight is the stroke weight of the font, a value from -7 to +7.  
  276. According to HP, 0 means "medium," 3 means "bold," and -3 means 
  277. "light."  DISKFONT translates the numbers to words according to 
  278. HP's scheme.  Not everyone uses that scheme.  BITSTREAM, for 
  279. example, apparently treats 2 as meaning bold.  
  280.  
  281. Font Type comes in three varieties.  "7-bit" indicates that ASCII 
  282. codes 32-127 are printable.  "8-bit" indicates that ASCII codes 
  283. 32-127 and 160-255 are printable.  "PC-8" indicates that all 
  284. ASCII codes except 0,7-15, and 27 are printable.  
  285.  
  286. Symbol Set indicates which characters will actually print.  This 
  287. is stored by number in the file.  It is possible DISKFONT will 
  288. not translate some numbers to words.  
  289.  
  290. Spacing is proportional or fixed.  For either, an appropriate 
  291. measure of the spacing is listed.  
  292.  
  293.  
  294. DISKFONT was inspired by Gary Elfring's program FONTINFO.
  295.  
  296.  
  297.  
  298.  
  299. II.  FIXPRE
  300.  
  301.  
  302. A.  WP5 Document Files
  303.  
  304. WP5 document files have two sections:  the document prefix 
  305. (created by WP5), which contains document default settings, 
  306. fonts, styles, and similar information; and the document itself 
  307. (text and codes entered by the user).  More information about 
  308. prefixes appears in a separate section below.  FIXPRE strips 
  309. certain information out of the prefix of a WP5 file; much of the 
  310. information stripped concerns printers and fonts, while most of 
  311. the rest is obsolete.  When you read the stripped file created by 
  312. FIXPRE back into WP5, WP5 restores the printer and font 
  313. information.  
  314.  
  315. This sounds pretty pointless.  Why do it?  There are several 
  316. reasons: 
  317.  
  318. (1)  Some users have had difficulty printing files after changing 
  319. printer drivers or when the files were created on another system.  
  320. Use FIXPRE to clean the printer-related information out of the 
  321. prefix; then read the file into WP5 and install with new drivers.  
  322. The difficulties may disappear.  (The UPDATE function introduced 
  323. in the WP5 July 1988 maintenance release solves many printer 
  324. driver problems of this kind, but apparently not all.) 
  325.  
  326. (2)  As you edit a file, WP5 adds new information to the prefix 
  327. and marks old information as no longer valid.  In early releases 
  328. of Version 5.0, this led to some problems.  Although these 
  329. problems may have disappeared with the November 15, 1989 release, 
  330. some aspects may remain.  This description is based on earlier 
  331. releases of WP5.  The FASTSAVE option in the WP5 configuration 
  332. setup (which is not the default setting with which the program is 
  333. shipped) speeds disk saves of documents because it does not 
  334. delete from the prefix the old, invalid information.  Therefore, 
  335. files edited in FASTSAVE mode tend to be larger than other WP5 
  336. files, sometimes startlingly so.  If you SLOWSAVE a file, most 
  337. (but not all) of the outdated information is physically deleted 
  338. from the prefix, but not if you FASTSAVE.  FIXPRE physically 
  339. deletes the information marked as deleted (and, depending on how 
  340. you configure FIXPRE, other information as well--the valid 
  341. printer and font information, as noted above).  So you could 
  342. either use SLOWSAVE regularly, or you could use FASTSAVE -- and 
  343. FIXPRE from time to time.  
  344.  
  345. (3)  Another reason for using FIXPRE is harder to describe.  
  346. Sometimes the formatting in a WP5 file goes haywire.  The problem 
  347. may -- or may not -- go away if you FIXPRE the document.  For 
  348. example, this document was originally written in WP5, using 
  349. Courier 10.  I changed to Courier 12, didn't like the results, 
  350. and went back to Courier 10.  After those changes, centered lines 
  351. were no longer centered properly, and many of the tabbed and 
  352. indented lines were also off.  After trying a few ways of fixing 
  353. the problem, I FIXPREd the document and read it back into WP5.  
  354. Problem gone.  I can't explain why the document went bad, or why 
  355. FIXPRE fixed it.  But if you run into strange formatting 
  356. problems, give FIXPRE a try.  Other problems to which this 
  357. solution may apply include misplaced graphic lines and improper 
  358. font printing.  
  359.  
  360. B.  WP5 Setup Files
  361.  
  362. The WP5 setup file, WP{WP}.SET, also contains a number of data 
  363. packets.  As you change your setup (without making a new setup 
  364. file), new data packets are added and old ones marked as deleted.  
  365. WP5 seems never actually to remove these deleted data packets 
  366. from the setup file.  FIXPRE will remove them.  I have seen setup 
  367. files shrink to 1/10th their size.  WordPerfect Corporation 
  368. advises erasing the set file and starting again.  FIXPRE is 
  369. easier.  
  370.  
  371.  
  372. C.  Using FIXPRE
  373.  
  374.  
  375. Usage:   FIXPRE Infile [Ofile] [-Option] [-Option]
  376.  
  377.          Infile is the WP5 document or setup file to be fixed.
  378.  
  379.          Ofile is not required.  If it is provided, Infile will 
  380.          be unchanged, and the fixed file written to Ofile.  If 
  381.          you do not provide an Ofile name, Infile will be renamed 
  382.          (as a backup), and the fixed file will be written under 
  383.          the original Infile name.  The backup file name is based 
  384.          on the Infile name.  It is the main part of the Infile 
  385.          name, with a new extension.  The backup file will NOT 
  386.          overwrite any existing file.  Suppose the Infile you 
  387.          supply is LETTER.DOC.  The program tries to use the name 
  388.          LETTER.F01 for the backup.  If a file with that name 
  389.          exists, the program tries LETTER.F02, and so on through 
  390.          F99 (where the program gives up and asks you to provide 
  391.          an output file name).  When the program is finished, 
  392.          LETTER.DOC will be the fixed file.  
  393.  
  394.     
  395.          Options:  (separate multiple options by blanks)
  396.  
  397.          -K        Kill (do not preserve) the backup file.  The 
  398.                    .Fxx file will be deleted when the program
  399.                    finishes.
  400.  
  401.          The remaining options are ignored if the input file is a 
  402.          setup file.  Options F and H have no effect if option D 
  403.          is used.  
  404.  
  405.          -F        By default, FIXPRE replaces Infile's "document 
  406.                    flags."  -F preserves the original document 
  407.                    flags.  It is not clear this is ever useful.  
  408.  
  409.          -H        By default, FIXPRE eliminates the prefix's 
  410.                    "formatter hash table."  -H preserves it.   It 
  411.                    may never be sensible to use this option.  
  412.  
  413.          -D        With this option, FIXPRE strips only deleted 
  414.                    data packets from the prefix.  If all you want 
  415.                    to do is shrink a file, this option may save a 
  416.                    bit of time.  
  417.  
  418.  
  419.  
  420.  
  421. III.  FONTFILE
  422.  
  423.  
  424. FONTFILE extracts the list of names of soft font files found in a 
  425. PRS file.  These files must be present on disk and accessible to 
  426. WP5 in order to print documents which use the fonts they contain.  
  427. FONTFILE can be used in conjunction with DISKFONT to determine 
  428. whether those files are present on disk.  
  429.  
  430.  
  431. Usage:   FONTFILE  Infile [Ofile]
  432.  
  433.          Infile should be a PRS file.  The file extension 
  434.          defaults to PRS.  
  435.  
  436.          Output goes to standard output, unless Ofile is 
  437.          supplied.  Output can, and often should, be piped to 
  438.          DISKFONT.  See example above.  You might also want to 
  439.          redirect the output to an ASCII text file and then use 
  440.          the text file as input to DISKFONT when you are 
  441.          preparing to print a document that uses the PRS file.  
  442.          If Ofile is supplied, the output is in WP5 format.  
  443.  
  444.          Limitation: FONTFILE has been tested only with HP 
  445.                    LaserJet Series II printer files.  
  446.  
  447.  
  448.  
  449.  
  450. IV.  FONTLIST
  451.  
  452.  
  453. FONTLIST displays a list of the names of the fonts used in a WP5 
  454. document file.  (This list is found in the document's prefix, 
  455. which FONTLIST reads.)  This list may be useful if you are not 
  456. sure whether the fonts used in a document are available on your 
  457. disk.  
  458.  
  459. FONTLIST output can be misleading in two ways.  First, the 
  460. initial font, or any font specified in a document's initial codes 
  461. setting, will appear on the list even if you did not use the 
  462. font.  (FIXPRE in default mode will delete initial fonts.) 
  463.  
  464. Second, fonts which were once used in a document but later 
  465. replaced or removed will also appear in the list.  To avoid 
  466. listing these fonts, you can use FIXPRE on the document, read the 
  467. document into WP5, and then save it.  FONTLIST should then 
  468. produce a list of fonts actually used in the document (plus the 
  469. initial font).  
  470.  
  471. Often, font names in the list will be preceded by an extraneous 
  472. character.  You should be able to tell by observation that it is 
  473. extraneous.  
  474.  
  475.  
  476. Usage:             FONTLIST Infile [Ofile]
  477.  
  478.                    Infile is a WP5 document file.
  479.  
  480.                    Output is written to standard output unless 
  481.                    Ofile is provided.  If Ofile is provided, 
  482.                    output is in WP5 format.  
  483.  
  484.  
  485. V.  LISTMACS
  486.  
  487.  
  488. LISTMACS produces a list of up to 1000 macros in its input files; 
  489. both WPM and WPK files contain macros (each key redefinition in a 
  490. WPK file is a macro).  The output includes the file name, macro 
  491. description, and, for WPK macros, the name of the key to which 
  492. the macro is assigned.  By default, the output is sorted by 
  493. filename and, within filename, by macro description.  Alternate 
  494. sorts, or no sort, may be selected as options.  
  495.  
  496. Usage:   LISTMACS infile .. [infile] [-oOfile] [-sortoption]
  497.  
  498.          Up to 5 Infiles, which may include wildcards.
  499.  
  500.          Output to standard output unless Ofile specified with
  501.          -o.  If Ofile specified, output is in WP5 format.  WP5 
  502.          tab settings assume 1" left margin and 10 pitch 
  503.          monospaced font.  
  504.  
  505.          Sort options (default is sort by filename):
  506.          -N        No sort
  507.          -D        Sort on macro Description
  508.          -K        Sort on Key name
  509.  
  510.  
  511.          Example:
  512.          LISTMACS c:\wp\*.wpk c:\wp\*.wpm -D
  513.          
  514.          lists macros in all wpm,wpk files, sorted by description 
  515.  
  516.  
  517.  
  518.  
  519. VI.  MAKETABS
  520.  
  521.  
  522. MAKETABS converts ASCII text files to WP5 documents, replacing 
  523. sequences of spaces by tabs.  MAKETABS replaces spaces with tabs 
  524. by either of two methods and, in one method, according to either 
  525. default tab settings or those the user supplies.  The output WP5 
  526. file begins with a tab set code if the user supplied a tabstring 
  527. or tab spacing information to the program.  This form of 
  528. conversion is particularly useful for lists and tables, including 
  529. the output of some other WPTOOLS programs.  
  530.  
  531. Usage:   MAKETABS -OOfile [-Option] [-Option] 
  532.  
  533.          -O : output file.  Required. 
  534.  
  535.          Options: 
  536.          -IInfile  Input filename.  If there is no -I option, 
  537.                    MAKETABS defaults to standard input, and input 
  538.                    may be piped or redirected, or it may come 
  539.                    from the keyboard.  
  540.          -Tn1;n2;..;nmTabstring (in columns of the ASCII input)
  541.          -Sn       Tab spacing (for equally spaced tabs).  In 
  542.                    columns.  Default is 5.  
  543.          -M        Use Method 2 (tabs not based on tabstring or 
  544.                    tab spacing) 
  545.          -Nn       MiNimum spaces to replace.  Default is 3
  546.          -Xn       MaX spaces to replace (Method 2).  Default is 
  547.                    80.  
  548.          -Ln       WP5 Left margin (inches and tenths).  Default 
  549.                    1.0.  
  550.  
  551.  
  552. Method 1, the default method, replaces spaces by tabs to match 
  553. particular tab specifications.  Thus a sequence of spaces ending 
  554. at the column to which a tab would move the cursor (given the 
  555. particular tab specification) is replaced by a tab, but a 
  556. sequence of tabs of the same length that fits between two tab 
  557. positions is not replaced by tabs.  
  558.  
  559.  
  560. To use Method 1, MAKETABS requires a tab specification.  The tab 
  561. specification it uses is always given in terms of column 
  562. positions.  By default, it uses tabs set at 5 column intervals 
  563. (5;10;15;20, etc. -- the limit for a tab specification is column 
  564. 255).  Thus if a line starts with four spaces, they will be 
  565. replaced by a tab.  If it starts with five spaces, the result 
  566. will be a tab followed by a space.  If it starts with a letter 
  567. followed by three spaces, the spaces will be replaced by a tab.  
  568. If it starts with two letters followed by two spaces, by default 
  569. the spaces will not be replaced by a tab (because of the default 
  570. minimum spaces value of 3 -- you can change that with the -N 
  571. option).  
  572.  
  573. You can change the tab specification in two ways.  Using the -S 
  574. option, you can change the interval from the default value of 5.  
  575. Alternatively, you can use the -T option to specify a tab string 
  576. completely.  That option allows you to set tabs properly to 
  577. reflect the pattern of spacing in the file you are converting.  
  578. For example, to line up the columns of LISTMACS ASCII output with 
  579. tabs rather than spaces, use -T9;15;61 (you would also use -N0, 
  580. because there are likely to be some very short sequences of 
  581. spaces).  
  582.  
  583. If you do specify tab settings in either of these ways, the 
  584. appropriate tab set command is included at the beginning of the 
  585. WP5 output file.  Column positions are assumed to represent 
  586. tenths of an inch.  However, the WP5 tab settings are not a 
  587. direct translation into inches of your column specification.  
  588. MAKETABS assumes that the ASCII text file begins at the beginning 
  589. of a line, but that WP5 files have a left margin.  By default, 
  590. MAKETABS assumes a WP5 left margin of 1.0".  So the WP5 tab 
  591. settings resulting from the -T command in the previous paragraph 
  592. are 1.9", 2.5", and 7.1".  You can change the assumed left margin 
  593. with the -L command (e.g., -L1.5).  MAKETABS does not put a 
  594. margin change command in the output file.  
  595.  
  596. Method 2 ignores tab settings entirely.  It simply replaces any 
  597. sequence of spaces of at least the minimum length (up to the 
  598. maximum--see the -X option above) by a single tab.  
  599.  
  600. For an example, see below under WHATPTRS.
  601.  
  602.  
  603. VII.  MERGESUM
  604.  
  605. MERGESUM extracts document summaries from WP5 files and writes 
  606. them, along with information from the DOS file directory, to a 
  607. WP5 secondary merge file.  The result is a database of document 
  608. summaries.  You can then use the WP5 Merge and Sort functions to 
  609. manipulate the output.
  610.  
  611. The secondary merge file MERGESUM creates has the following fields:
  612.  
  613.     1:   File path
  614.     2:   File name (without extension)
  615.     3:   File extension
  616.     4:   Creation date (as it appears in the summary)
  617.     5:   Creation date (yy/mm/dd, for easier sorting)
  618.     6:   File date (yy/mm/dd) from DOS directory
  619.     7:   File size (bytes, 7 column field, right justified)
  620.     8:   Descriptive Filename
  621.     9:   Subject/Account
  622.     10:  Author
  623.     11:  Typist
  624.     12:  Comments
  625.  
  626. If, for example, you wanted a report listing, in three columns, 
  627. the full file name, the creation date in yy/mm/dd form, and the 
  628. Descriptive Filename, you would use a primary merge file like 
  629. this: 
  630.  
  631. ^F1^^F2^.^F3^[Tab]^F5^[Tab]^F8^
  632.  
  633. (After the merge output file is created, replace hard page breaks 
  634. by hard returns.  Or use ^N^P^P at the end of the primary merge 
  635. file to avoid hard page breaks.) 
  636.  
  637. By default, the secondary merge file includes no mention of any 
  638. WP5 document files included in the input file specifications that 
  639. do not have document summaries.  However, the filename, file 
  640. date, and file size for these files are available.  You can also 
  641. choose to write this information to standard output.  You can 
  642. also choose to include records for these files in the secondary 
  643. merge file, using just the DOS file directory information or also 
  644. including the first roughly 400 characters of the document text 
  645. as the "comments." 
  646.  
  647. Usage:   MERGESUM Infile [Infile] -oOfile [-A] [-C] [-S]
  648.  
  649.          Any number of Infiles, which may include wildcards.
  650.  
  651.          -oOfile   the secondary merge output file
  652.  
  653.          Options:
  654.          -A        include All WP5 files in Ofile, even if they 
  655.                    have no document summary.  
  656.  
  657.          -C        like -A, but includes the beginning of the 
  658.                    document text as Comments.  
  659.  
  660.          -S        information on files with no summaries written 
  661.                    to Standard output.  
  662.  
  663.          Note:  You can use -S along with -A or -C.
  664.  
  665. VIII.  PRINTIT
  666.  
  667.  
  668. PRINTIT has nothing to do with WP5 and, despite its name, does no 
  669. printing.  It formats ASCII text files for printing.  Many of the 
  670. programs in WPTOOLS write output to standard output by default.  
  671. This output is unpaginated and has no left margin.  Sending it 
  672. directly to your printer will produce less than ideal results.  
  673.  
  674. PRINTIT reads standard input, paginates it, puts a heading on 
  675. each page (the heading has the date and a page number, and 
  676. optionally includes a title), and writes it to standard output.  
  677. It does not insert any printer control codes in the output file -
  678. - pages are filled with blank lines where necessary.  By default, 
  679. it provides no left margin, assumes the page length is 66 lines, 
  680. and puts 60 lines of text on the page.  You can specify a left 
  681. margin on the command line, and you can clone the program to 
  682. change the default left margin, the page length, and the last 
  683. printing line.  The default page length and bottom line are 
  684. probably suitable for most printers.  For printers such as the HP 
  685. LaserJet, you will want to clone the program to change the number 
  686. of lines of text on a page.  
  687.  
  688. PRINTIT does NOT write anything to the printer. It writes to 
  689. standard output.  You can redirect its output to the printer, or 
  690. you can redirect its output to a file and copy the file to the 
  691. printer.  
  692.  
  693. Usage:             PRINTIT ["title"] [-Option] 
  694.  
  695.                    Input from standard input
  696.  
  697.                    Output to standard output
  698.  
  699.                    Title appears on each page of the output. 
  700.                    Enclose the title in double (") or single ( ', 
  701.                    but NOT ` ) if it contains blanks.  If the 
  702.                    title includes one kind of quotation mark, use 
  703.                    the other to enclose it.  
  704.  
  705.                    Options: 
  706.  
  707.                    -?   Help 
  708.  
  709.                    -n   n is a digit,0-9, the number of
  710.                         columns to offset the output from the 
  711.                         left edge.  
  712.     
  713.                    -C   Clone for page length, bottom line, 
  714.                         offset (number of blank  columns to 
  715.                         insert before the text).  
  716.  
  717.                    Cloning is fully prompted -- simply follow the 
  718.                    directions.  Cloning overwrites the executable 
  719.                    file with a modified version (and so the 
  720.                    program file may have a later date than you 
  721.                    would expect).  If you use DOS 2.x, you must 
  722.                    have PRINTIT.EXE in the default directory.  If 
  723.                    you use DOS 3.x, PRINTIT will find itself 
  724.                    under whatever name you use for it.  If you 
  725.                    use DOS 4.x, let me know what happens.  
  726.  
  727.  
  728. PRINTIT is based on code in Software Tools in Pascal, by 
  729. Kernighan and Plauger.  The cloning routine is David Doty's 
  730. WritExec, which is based on David Dubois' AutoInst.  Because of 
  731. the origins of the program, it is not subject to the limitations 
  732. of the WPTOOLS license provisions.  Anyone may use PRINTIT 
  733. without paying the WPTOOLS license fee.  
  734.  
  735.  
  736.  
  737. IX.  PRSFONTS
  738.  
  739.  
  740. PRSFONTS lists the fonts available in a WP5 PRS file.  This is 
  741. useful if you have a laser printer and create numerous PRS files.  
  742. PRSFONTS can number the list, starting with zero.  These numbers 
  743. are the basis for the ID numbers you must supply to an HP 
  744. LaserJet Series II printer if you download soft fonts from the 
  745. DOS command line, rather than relying on WP5 to download them.  
  746. Whether these numbers are suitable for other printers has not 
  747. been tested.  
  748.  
  749.  
  750. Usage:             PRSFONTS Infile [Ofile] [-N]
  751.  
  752.                    Infile is a WP5 PRS file.  If no extension is 
  753.                    supplied, extension PRS is assumed.  
  754.  
  755.                    Output is written to standard output unless 
  756.                    Ofile is specified.  If it is specified, 
  757.                    output is in WP5 format.  
  758.  
  759.                    -N   Number the fonts.
  760.  
  761.  
  762. X.  STYLIST
  763.  
  764.  
  765. STYLIST produces a list of up to 1000 styles in document files 
  766. and style libraries.  The list includes the filename, the name of 
  767. the style, the letter P (for paired) or the letter O (for open) 
  768. to indicate the type of style, and the style description.  By 
  769. default, the output is sorted by filename and within filename by 
  770. style name.  Other sorting options are available.  
  771.  
  772.  
  773. Usage:             STYLIST Infile [Infile] [-oOfile] [-sortoption] 
  774.  
  775.                    Up to 5 Infiles may include drive, directory, 
  776.                    wildcards.  
  777.  
  778.                    Output to standard output, unless Ofile is 
  779.                    specified (with -o).  If Ofile specified, 
  780.                    output is in WP5 format.  WP5 formatting sets 
  781.                    left and right margins to 0.5".  Tab settings 
  782.                    based on assumption of 10 pitch monospaced 
  783.                    font.  
  784.  
  785.                    Sort options (default is sort by filename): 
  786.                    -N   No sort 
  787.                    -D   Sort on style Description 
  788.                    -M   Sort on style naMe 
  789.                    -T   Sort on style Type (Paired, Open)
  790.  
  791.  
  792.          Example: STYLIST c:\wp\*.sty c:\wp\*.doc -D 
  793.  
  794.     lists styles in all sty and doc files, sorted by description 
  795.  
  796.  
  797.  
  798.  
  799. XI.  WHATPTRS
  800.  
  801.  
  802. A single ALL file can be used to create PRS files for a number of 
  803. different printers.  WHATPTRS lists the printers for which the 
  804. input ALL file can create drivers.  Each line of the output 
  805. begins with the name of the input ALL file, followed by the name 
  806. of a printer.  The program can usually sort by printer name.  
  807. Whether WHATPTRS can sort all the printer names depends on how 
  808. many printers there are in the input ALL files and on the amount 
  809. of memory available.  If you cannot sort the full collection with 
  810. WHATPTRS itself, you could pipe unsorted output to the DOS SORT 
  811. routine.  The WHATPTRS sort is not sensitive to case; because the 
  812. DOS sort is sensitive to case, the -L option is available to put 
  813. printer names into all lower case.  Some printer names in ALL 
  814. files begin with *, to indicate that the source of the printer 
  815. information in the file is not WordPerfect Corporation.  To 
  816. permit a proper sort, WHATPTRS moves the * from the beginning to 
  817. the end of the printer name.  
  818.  
  819.  
  820.  
  821. Usage:     WHATPTRS Infile[.ext] [Ofile] [-option] [-option]
  822.  
  823.                    Infile may include wildcards.  ext defaults to 
  824.                    ALL.  
  825.  
  826.                    Output to standard output unless Ofile is 
  827.                    specified. If Ofile is specified, output is in 
  828.                    WP5 format.  
  829.  
  830.                    -S   Sort output by printer name.
  831.  
  832.                    -L   output Lower case printer names.
  833.  
  834.  
  835.     Examples       WHATPTRS *|PRINTIT>prn
  836.  
  837.                    Prints a list of printers in all the ALL files 
  838.                    in the default directory.  
  839.  
  840.                    WHATPTRS * -L|Sort/+15|MAKETABS -OutFile -M
  841.  
  842.                    Produces (in OutFile) an alphabetically sorted 
  843.                    list of printers in all the ALL files in the 
  844.                    default directory, in the form of a WP5 file 
  845.                    formatted with tabs rather than spaces.  You 
  846.                    can get the same results with 
  847.  
  848.                    WHATPTRS * OutFile -S -L
  849.  
  850.  
  851.                    WHATPTRS * -L|find "panasonic" >prn
  852.  
  853.                    Prints the names of all Panasonic printers in 
  854.                    the ALL files in the default directory, 
  855.                    together with the name of the ALL file 
  856.                    applicable to each printer.  
  857.  
  858.  
  859. XII.  WP5LOOK
  860.  
  861. WP5LOOK is a file browsing program for WP5 document files.  It 
  862. displays WP5 document files listed on the command line.  (The 
  863. document summary is displayed if it exists.)  The program pauses 
  864. as each screen is displayed.  If there is more information in the 
  865. document, you can page forward.  Generally, you can also page 
  866. backward within a document, although only for a few screens (the 
  867. number varies, but is never more than eight).  At each screen, 
  868. you also have the options of going back to the beginning of the 
  869. file (Home), jumping to the end of the file, going on to the next 
  870. file, or quitting the program.  (If there are no more files, the 
  871. next file and quit options produce the same results.) You can 
  872. also search for strings in the displayed file.  The top line of 
  873. the display indicates the corresponding WordPerfect page numbers.  
  874.  
  875. WP5LOOK does not correctly format files, but its display will 
  876. typically be a reasonable approximation of the proper formatting.  
  877. The program is designed for use when you need to rummage through 
  878. one or more WP5 documents quickly (or when not enough memory is 
  879. available to use WP5 itself), not for when you care about the 
  880. details of formatting.  Here are some of the formatting problems: 
  881.  
  882.     --   Paragraphs are reformatted by default to a 75-character 
  883.          line, although you can change the number from 75; the 
  884.          right margin is especially ragged, because words are not 
  885.          split at hyphens.  Margin changes are ignored.  Line 
  886.          spacing is ignored.  Multiple columns are placed end to 
  887.          end.  
  888.  
  889.     --   Everything is displayed in the same font.  
  890.  
  891.     --   Tab settings are ignored.  Ordinary tabs are displayed 
  892.          as five spaces, more exotic tabs as a single space.  
  893.          Indent codes are all treated as ordinary, not left-
  894.          right.  An indent code is represented as five spaces.  
  895.          Indented text is indented five spaces.  
  896.  
  897.     --   Centering is based on an 80-character line.  
  898.  
  899.     --   Characters a standard IBM PC cannot display and 
  900.          overstruck characters are displayed as upsidedown 
  901.          question marks.  
  902.  
  903.     --   Footnotes and endnotes are displayed embedded in the 
  904.          text where they occur.  They are set off by line breaks 
  905.          and enclosed between **FN: and **EFN.  
  906.  
  907.     --   Styles, initial codes, graphics, captions, and so forth 
  908.          are ignored.  
  909.  
  910.     Usage:  WP5LOOK Infile [Infile] .. [Infile]
  911.  
  912.          Infile may include wildcards.  You may specify as many 
  913.          Infiles as fit on the command line.  
  914.  
  915.  
  916. Once you have started the program, operation is prompted and for 
  917. the most part intuitive.  The bottom line on the screen indicates 
  918. which keystroke options may be chosen (except for W, which is 
  919. never indicated).  In some cases, you can use different 
  920. keystrokes to achieve the same result.  The prompt does not 
  921. indicate that flexibility.  Here is the full set of options, only 
  922. some of which may be available at particular screens: 
  923.  
  924.     Move one screen forward        PgD, [space], [return]
  925.     To last screen in file         [End]
  926.     Move one screen back           PgU, b, B
  927.     To first screen in file        [Home]
  928.     To next file                   N
  929.     Exit from the program          Q, [esc], F7
  930.     Search (exact match)           S
  931.     Find (match ignoring case)     F
  932.     Set line Width, 10-80 chars.   W
  933.  
  934.  
  935. Search and Find
  936.  
  937. When you select Search or Find, you are prompted for a search 
  938. string.  Search looks for an exact match to your search string.  
  939. Find looks for a match but ignores differences in case.  
  940. (Searching for cat will not match CAT, but Finding cat will match 
  941. CAT.)  If you have previously done a Search or Find in the same 
  942. WP5LOOK session, you will be shown your previous search string.  
  943. If you want to use the same search string, simply hit <enter>.  
  944. You can also edit the search string.  If the first keystroke you 
  945. hit is a character rather than an editing key, the previous 
  946. search string will disappear, and you simply enter (and edit) a 
  947. new one.  
  948.  
  949. Searching and Finding search from the currently displayed screen 
  950. to the end of the file.  The first screen containing a match is 
  951. displayed, with each line containing the match highlighted.  
  952. After each match, you are asked whether you want to continue 
  953. looking for the same string.  To search the entire file, you must 
  954. start the search at the beginning of the file (which you can 
  955. reach with the Home key).  
  956.  
  957. Leading and trailing blanks in the search string can be used if 
  958. you want to limit searches to matching whole words.  For this 
  959. purpose, screen display lines of your WP5 document file are 
  960. treated as beginning and ending with blanks.  The search string 
  961. may include blanks, so you can search for phrases (limited to 60 
  962. characters).  However, matches are limited to a single line -- if 
  963. a phrase is split between lines in the display, you cannot match 
  964. it.  
  965.  
  966. The search string can be edited using the cursor keys and other 
  967. keys in an intuitively obvious manner.  WordStar editing commands 
  968. are also available.  A complete list of editing commands follows 
  969. (commas indicate alternatives): 
  970.  
  971.     <Enter> (<Return>)   Accept line
  972.  
  973.     <Esc>                Quit without changing line; do not search
  974.  
  975.     <Left>,<CtrlS>       Cursor left one character
  976.  
  977.     <Right>,<CtrlD>      Cursor right one character
  978.  
  979.     <CtrlLeft>,<CtrlA>   Cursor left one word
  980.  
  981.     <CtrlRight>,<CtrlF>  Cursor right one word
  982.  
  983.     <Home>,<CtrlQ><S>    Cursor to line beginning
  984.  
  985.     <End>,<CtrlQ><D>     Cursor to line end
  986.  
  987.     <Del>,<CtrlG>        Delete character at cursor
  988.  
  989.     <Bksp>,<CtrlH>,      Delete character to left of cursor 
  990.     <CtrlBksp>
  991.  
  992.     <CtrlEnd>,<CtrlQ><Y> Delete to end of line]
  993.  
  994.     <CtrlY>, <CtrlX>     Delete entire line
  995.  
  996.     <CtrlHome>           Delete from beginning of line
  997.  
  998.     <CtrlT>              Delete word to right of cursor
  999.  
  1000.     <Ins>                Toggle insert mode on or off.  Size of 
  1001.                          cursor indicates the mode.  Default is 
  1002.                          insert mode off.  
  1003.  
  1004.     <CtrlR>,<CtrlQ><L>   Restore original contents of line after 
  1005.                          editing 
  1006.  
  1007.  
  1008.  
  1009. XIII. WPSNOOP
  1010.  
  1011.  
  1012. WPSNOOP displays information concerning its input file(s).  If 
  1013. WPSNOOP recognizes an input file as a WPCorp-type file, it at 
  1014. least identifies the WPCorp product to which the file is related.  
  1015. If the file is recognized as a WordPerfect file (and it is not 
  1016. for versions earlier than 5.0), WPSNOOP reports on the type of 
  1017. file.  If the file is a WP5 document file, WPSNOOP lists the 
  1018. document summary if one exists.  If the file is a WP5 macro file, 
  1019. WPSNOOP lists the macro description.  Used with a wildcard input 
  1020. file specification, WPSNOOP can therefore provide useful 
  1021. identification for many of the files.  
  1022.  
  1023.  
  1024. For WP5 document files and setup files, WPSNOOP optionally 
  1025. provides considerably more information, although most WP5 users 
  1026. will not find this information useful.  For a WP5 document file, 
  1027. WPSNOOP can display information about the file prefix -- in 
  1028. particular what sort of data packets are contained within the 
  1029. prefix, where they are located and how large they are.  (Data 
  1030. packets are part of the organizational structure of the file 
  1031. prefix; the term data packet comes directly from WPCorp.)  
  1032. Similar information can be shown for a setup file.  
  1033.  
  1034.  
  1035.  
  1036. Usage:             WPSNOOP infile [infile] [-oOfile [-V]
  1037.  
  1038.                    Up to 5 infiles, which may include
  1039.                    wildcards.
  1040.  
  1041.                    Output is written to standard output, unless
  1042.                    Ofile is specified (with -o).  If Ofile is
  1043.                    specified, output is in WP5 format.
  1044.  
  1045.                    -V option for Verbose report, which
  1046.                    includes full map of data packets.
  1047.  
  1048. Limitations:
  1049.  
  1050. With the Verbose option, WPSNOOP may not provide information 
  1051. about a few indexes which technically exist but provide no 
  1052. information.  The end of useful information is signalled 
  1053. (generally) by an index identifying a data packet of the "end of 
  1054. prefix" type.  All data packets after the first such data packet 
  1055. are identical (or at least provide no useful information).  
  1056. WPSNOOP reports on only the first of these, even though others 
  1057. may exist.  If the index pointing to the "end of prefix" data 
  1058. packet has an index number less than 4, enough additional 
  1059. identical indexes exist so that the last of them is No. 4.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.            GENERAL INFORMATION ABOUT WP5 FILE PREFIXES
  1065.  
  1066.  
  1067. This section provides some basic information about WP5 file 
  1068. prefixes.  Although this information may help you understand the 
  1069. situations in which FIXPRE is likely to be useful, you do not 
  1070. need to read this section in order to use FIXPRE, and the less 
  1071. technically inclined might wish to skip it.  
  1072.  
  1073. A WP5 file document file has two areas:  the prefix area and the 
  1074. document area.  The document area contains, roughly speaking, the 
  1075. keystrokes you put into the file; it corresponds to the entire 
  1076. file in earlier versions of WordPerfect, which did not use 
  1077. prefixes.  
  1078.  
  1079. The prefix area begins with a "file prefix," which identifies the 
  1080. file as a WP5 file, indicates where the document area begins (as 
  1081. an offset in the file), and does little more.  
  1082.  
  1083. The rest of the prefix area consists of "data packets" (which 
  1084. contain a wide variety of information about printers, defaults, 
  1085. fonts, graphics, styles, and other matters) and indexes (which 
  1086. identify where in the prefix particular data packets are 
  1087. located).  
  1088.  
  1089. The indexes are organized in blocks.  Each block consists of a 
  1090. "header index" and four other indexes.  The header index 
  1091. identifies itself as such, provides some information which is the 
  1092. same for every WP5 document file header index and is therefore 
  1093. not interesting, and gives the offset in the file where the next 
  1094. index block begins.  Each of the other four indexes in a block 
  1095. identifies the type of data packet to which it is an index, the 
  1096. length of that data packet in bytes, and the offset in the file 
  1097. where the data packet can be found.  
  1098.  
  1099. WP5 document files can have the following kinds of data packets, 
  1100. as well as some that published information has apparently not yet 
  1101. identified: 
  1102.  
  1103.  
  1104. Document summary
  1105. Document default values
  1106. Document flags
  1107. Font name string pool
  1108. Graphic image data
  1109. Formatter hash table
  1110. List of fonts used in document
  1111. Document printer information
  1112. Style
  1113. PS tables for fonts
  1114.  
  1115. In addition, there may be deleted packets.
  1116.  
  1117. The structure of a WP5 setup file is identical to that of a WP5 
  1118. document file prefix, except that it has a different set of data 
  1119. packets.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.                            UPDATE NOTES
  1125.  
  1126.  
  1127. WPTOOLS Version 3 differs from Version 2 in a number of respects.  
  1128. (1)  Two new programs, MERGESUM and WP5LOOK, have been added.  
  1129. (2)  PRSFONTS has been modified to limit its output to the actual 
  1130. fonts where possible and to allow numbering of the fonts.  The 
  1131. 50,000 character limit on the list of fonts has been reduced by 
  1132. 3,000.  (3)  FONTLIST has been modified so that it will work 
  1133. correctly with some files that it did not properly handle before.  
  1134. (4)  WHATPTRS now can itself sort the printer list; it also moves 
  1135. the position of an asterisk WPCorp added to some printer names.  
  1136. One of the two formats for output has been deleted.  (5)  A 
  1137. number of the programs, which previously sent output only to 
  1138. standard output, now optionally write WP5 format output.  (6)  
  1139. FIXPRE has been modified to allow more convenient operation.  
  1140.  
  1141. Progress comes at a price.  The registration fee for WPTOOLS3 is 
  1142. $5 greater than for WPTOOLS2.  
  1143.  
  1144.  
  1145. David Seidman
  1146. Software by Seidman
  1147. 2737 Devonshire Pl. NW
  1148. Washington, DC 20008
  1149. CompuServe: [70441,2414]
  1150.  
  1151.                   * * * * * * * * * * * * * * * 
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.                        LICENSE INFORMATION
  1158.  
  1159.  
  1160.  
  1161. WPTOOLS3 is not in the public domain.  Both the collection and 
  1162. the individual programs are fully protected by copyright.  
  1163.  
  1164. You are granted without charge a license which permits (a) use of 
  1165. the programs for a period of 30 days for evaluation and testing; 
  1166. (b) making copies for distribution to others without charge, 
  1167. provided the programs and the accompanying documentation are 
  1168. distributed together and without modification; (c) posting the 
  1169. programs, together with the accompanying documentation, on 
  1170. electronic bulletin board systems.  (For PRINTIT only, you are 
  1171. granted without charge a license to use the program for as long 
  1172. as you like.) 
  1173.  
  1174. Use after the 30 day evaluation and testing period requires 
  1175. payment of a license fee.  For a single copy (plus necessary 
  1176. archival copies), to be used on only one computer at a time, the 
  1177. fee is $25.00.  For your convenience, an invoice form is included 
  1178. below.  For large quantities, discounts and site licenses are 
  1179. available.  Write for information.  Any license for which payment 
  1180. is properly made is valid for this version of WPTOOLS and all 
  1181. subsequent versions.  
  1182.  
  1183. What do you get for your license fee?  Aside from permission to 
  1184. use the programs and the warm feeling that you are not violating 
  1185. the copyright laws, not very much, but a little.  If you pay the 
  1186. license fee to me and tell me the version you have (or if I can 
  1187. figure out what version you have), I will send you the next 
  1188. version (unless the next version involves a trivial change too 
  1189. small to worry you about).  After that, I will send you 
  1190. notification of further new versions.  And if you let me know 
  1191. about any problems you have with the programs, I will try to 
  1192. solve them.  
  1193.  
  1194. Users groups and other not-for-profit organizations may 
  1195. distribute unmodified copies of WPTOOLS3, together with its 
  1196. accompanying documentation, for a fee to cover duplication and 
  1197. related costs, but not to exceed $6.00.  Your payment of such a 
  1198. fee does not eliminate the requirements concerning payment of a 
  1199. license fee.  Certain organizations may have been granted 
  1200. permission to distribute the program for a fee larger than $6.00, 
  1201. the larger fee to include the license fee for a single copy.  If 
  1202. the organization from which you received a copy of the program 
  1203. has been granted that permission, it should tell you so.  
  1204.  
  1205. The United States Department of Justice is granted a license, 
  1206. without payment of fee, for all official use of WPTOOLS3.  
  1207.  
  1208.  
  1209.                       WARRANTY INFORMATION
  1210.  
  1211.  
  1212. These programs are distributed without warranties of any kind, 
  1213. express or implied, including, but not limited to, the implied 
  1214. warranties of merchantability and fitness for a particular 
  1215. purpose.  
  1216.  
  1217. No representation or other affirmation of fact, including but not 
  1218. limited to statements regarding suitability for use, or 
  1219. performance of the programs, shall be or be deemed a warranty by 
  1220. the licensor for any purpose, nor give rise to any liability or 
  1221. obligation of the licensor whatever.  
  1222.  
  1223. In particular, no statement in program documentation shall be 
  1224. deemed a representation or warranty that the programs will 
  1225. perform in any particular manner, or perform in any manner 
  1226. whatsoever, or that the programs are suitable for any particular 
  1227. use or any use at all.  
  1228.  
  1229.                   * * * * * * * * * * * * * * *
  1230.  
  1231.                              INVOICE
  1232.  
  1233.  
  1234. David Seidman
  1235. Software by Seidman
  1236. 2737 Devonshire Pl. NW
  1237. Washington, DC 20008
  1238.  
  1239.                                                      DATE:       
  1240.  
  1241. SOLD TO:
  1242.  
  1243. __________________________
  1244. __________________________
  1245. _________________________
  1246.  
  1247.  
  1248. ┌──────────────────────────────────────┬────────────────────────┐
  1249. │ Description                          │     Price              │
  1250. │                                      │                        │
  1251. ├──────────────────────────────────────┼────────────────────────┤
  1252. │                                      │                        │
  1253. │ License for WPTOOLS3.1               │      $   25.00         │
  1254. │                                      │                        │
  1255. │ additional licenses @ $25.00         │       _____.__         │
  1256. │                                      │                        │
  1257. │                                      │                        │
  1258. │                                      │                        │
  1259. │                                      │                        │
  1260. └──────────────────────────────────────┴────────────────────────┘
  1261.  
  1262.                                 Total:       $_____.__
  1263.  D.C. Residents add 6% D.C. Sales Tax:          ___.__
  1264.  
  1265.                          Total Charge:       $_____.__
  1266.  
  1267.  
  1268. Make checks payable to David Seidman.  Please mark checks
  1269. "WPTOOLS31".
  1270.  
  1271. ------------------------------------------------------------
  1272.  
  1273.